package van.planifolia.function;

import java.util.Collections;
import java.util.function.Function;
import java.util.function.Predicate;

/**
 * Created by Intellij IDEA<br>
 *
 * @author Planifolia.Van
 * @version 1.0
 * @date 2022/11/3 17:52
 */
public class Function4 {
    public static void main(String[] args) {
        // 我们想要判断最后一个字符串是否为只当内容，显然我们这个lambda表达式因为只有一个参数一个语句所以省略了(),{}，以及return语句
        String str = "hellos";
        test(e -> "s".equals(e.substring(str.length() - 1, str.length())), str);
    }
    /**
     * 编写一个测试方法来模拟jdk中的一些需要使用函数式接口的方法
     * @param predicate 断言者函数式接口的实现类
     * @param str       要被判断的数组
     */
    public static void test(Predicate<String> predicate, String str) {
        if (predicate.test(str)) {
            System.out.println("最后一个字符串内容确实为s");
        } else {
            System.out.println("最后一个字符串内容不为s");
        }
    }


}
